- 增加
Swoole\Server\Port->getSocket
方法,可获取监听端口的socket句柄 - 增加
Swoole\Server->getClientInfo()['close_errno']
属性,可获取连接关闭的错误码 - 修复
Swoole\Server->close
无法关闭未完成握手的SSL客户端连接的问题 - 修复
Swoole\Server->taskwait
在BASE模式下无法使用的问题 - 增加
Swoole\Event
命名空间与类风格的API - 修复
Swoole\MySQL
客户端无法支持超过250字段查询语句的问题 - 增加
Swoole\MySQL
字符集设置支持 - 修复
Swoole\Server->task
第三参数传入Callback在PHP7下发生崩溃的问题 - 修复
Swoole\Http\Server
由于外部引用request对象后用户取消请求导致崩溃的问题 - 增加
Swoole\Server->taskWaitMulti
可以并发执行多个任务 - 修复
Swoole\Http\Client
的WebSocket客户端接收数据粘包的问题 - 增加
Swoole\Server\Port
对Request
、Open
、HandShake
、Message
回调函数设置支持 - 增加
Swoole\Client->getPeerCert
方法 - 增加
Swoole\Client->pause
和Swoole\Client->resume
- 增加
Swoole\Http\Client
更多的客户端设置选项 - 修复
Swoole\Http\Request->files
在PHP7下为NULL时被外部引用发生崩溃的问题
之前的版本taskwait
只支持同时执行一个任务,在一些场景下需要同时并发执行多个Task,并返回结果集。最新的1.8.8
版本增加了并发Task的支持,可以解决此类问题。
$tasks[] = mt_rand(1000, 9999);
$tasks[] = mt_rand(1000, 9999);
//等待所有Task结果返回,超时为10s
var_dump($tasks);
$results = $serv->taskWaitMulti($tasks, 10.0);
var_dump($results);